40 research outputs found
Designs and Analyses in Structured Peer-To-Peer Systems
Peer-to-Peer (P2P) computing is a recent hot topic in the areas of networking and distributed systems. Work on P2P computing was triggered by a number of ad-hoc systems that made the concept popular. Later, academic research efforts started to investigate P2P computing issues based on scientific principles. Some of that research produced a number of structured P2P systems that were collectively referred to by the term "Distributed Hash Tables" (DHTs). However, the research occurred in a diversified way leading to the appearance of similar concepts yet lacking a common perspective and not heavily analyzed. In this thesis we present a number of papers representing our research results in the area of structured P2P systems grouped as two sets labeled respectively "Designs" and "Analyses".
The contribution of the first set of papers is as follows. First, we present the princi- ple of distributed k-ary search and argue that it serves as a framework for most of the recent P2P systems known as DHTs. That is, given this framework, understanding existing DHT systems is done simply by seeing how they are instances of that frame- work. We argue that by perceiving systems as instances of that framework, one can optimize some of them. We illustrate that by applying the framework to the Chord system, one of the most established DHT systems. Second, we show how the frame- work helps in the design of P2P algorithms by two examples: (a) The DKS(n; k; f) system which is a system designed from the beginning on the principles of distributed k-ary search. (b) Two broadcast algorithms that take advantage of the distributed k-ary search tree.
The contribution of the second set of papers is as follows. We account for two approaches that we used to evaluate the performance of a particular class of DHTs, namely the one adopting periodic stabilization for topology maintenance. The first approach was of an intrinsic empirical nature. In this approach, we tried to perceive a DHT as a physical system and account for its properties in a size-independent manner. The second approach was of a more analytical nature. In this approach, we applied the technique of Master Equations, which is a widely used technique in the analysis of natural systems. The application of the technique lead to a highly accurate description of the behavior of structured overlays. Additionally, the thesis contains a primer on structured P2P systems that tries to capture the main ideas prevailing in the field
NATCracker: NAT Combinations Matter
In this paper, we report our experience in working
with Network Address Translators (NATs). Traditionally, there
were only 4 types of NATs. For each type, the (im)possibility
of traversal is well-known. Recently, the NAT community has
provided a deeper dissection of NAT behaviors resulting into at
least 27 types and documented the (im)possibility of traversal
for some types. There are, however, two fundamental issues that
were not previously tackled by the community. First, given the
more elaborate set of behaviors, it is incorrect to reason about
traversing a single NAT, instead combinations must be considered
and we have not found any study that comprehensively states,
for every possible combination, whether direct connectivity with
no relay is feasible. Such a statement is the first outcome of the
paper. Second, there is a serious need for some kind of formalism
to reason about NATs which is a second outcome of this paper.
The results were obtained using our own scheme which is an
augmentation of currently-known traversal methods. The scheme
is validated by reasoning using our formalism, simulation and
implementation in a real P2P network
Physics-inspired Performace Evaluation of a Structured Peer-to-Peer Overlay Network
In the majority of structured peer-to-peer overlay networks a graph
with a desirable topology is constructed. In most cases, the graph is
maintained by a periodic activity performed by each node in the graph
to preserve the desirable structure in face of the continuous change
of the set of nodes. The interaction of the autonomous periodic
activities of the nodes renders the performance analysis of such
systems complex and simulation of scales of interest can be
prohibitive. Physicists, however, are accustomed to dealing with
scale by characterizing a system using intensive variables,
i.e. variables that are size independent. The approach has proved its
usefulness when applied to satisfiability theory. This
work is the first attempt to apply it in the area of distributed
systems. The contribution of this paper is two-fold. First, we
describe a methodology to be used for analyzing the performance of
large scale distributed systems. Second, we show how we applied the
methodology to find an intensive variable that describe the
characteristic behavior of the Chord overlay network, namely, the
ratio of the magnitude of perturbation of the network (joins/failures)
to the magnitude of periodic stabilization of the network
Mesmerizer: A Effective Tool for a Complete Peer-to-Peer Software Development Life-cycle
In this paper we present what are, in our experience, the best
practices in Peer-To-Peer(P2P) application development and
how we combined them in a middleware platform called Mesmerizer. We explain how simulation is an integral part of
the development process and not just an assessment tool.
We then present our component-based event-driven framework for P2P application development, which can be used
to execute multiple instances of the same application in a
strictly controlled manner over an emulated network layer
for simulation/testing, or a single application in a concurrent
environment for deployment purpose. We highlight modeling aspects that are of critical importance for designing and
testing P2P applications, e.g. the emulation of Network Address Translation and bandwidth dynamics. We show how
our simulator scales when emulating low-level bandwidth
characteristics of thousands of concurrent peers while preserving a good degree of accuracy compared to a packet-level
simulator
Comparing Maintenance Strategies for Overlays
In this paper, we present an analytical tool for understanding the
performance of structured overlay networks under churn based on the
master-equation approach of physics. We motivate and derive an equation for the
average number of hops taken by lookups during churn, for the Chord network. We
analyse this equation in detail to understand the behaviour with and without
churn. We then use this understanding to predict how lookups will scale for
varying peer population as well as varying the sizes of the routing tables. We
then consider a change in the maintenance algorithm of the overlay, from
periodic stabilisation to a reactive one which corrects fingers only when a
change is detected. We generalise our earlier analysis to underdstand how the
reactive strategy compares with the periodic one.Comment: 10 pages, 8 figure
An Analytical Study of a Structured Overlay in the presence of Dynamic Membership
In this paper, we present a complete analytical study of dynamic membership (aka churn) in structured peer-to-peer networks. We use a master-equation-based approach, which is used traditionally in
non-equilibrium statistical mechanics to describe steady-state or transient phenomena. We demonstrate that this methodology is in fact also well suited to describing structured overlay networks by
an application to the Chord system. For any rate of churn
and stabilization rates, and any system size, we accurately account for the functional form of: the distribution of inter-node distances, the probability of network disconnection, the fraction of failed or
incorrect successor and finger pointers and show how we can use these quantities to predict both the performance and consistency of lookups under churn.
Additionally, we also discuss how churn may actually be of different 'types' and the implications
this will have for structured overlays in general. All theoretical predictions match simulation results to a high extent.
The analysis includes details that are applicable to
a generic structured overlay deploying a ring as well
as Chord-specific details that can act as guidelines
for analyzing other systems
A GPU-enabled solver for time-constrained linear sum assignment problems
This paper deals with solving large instances of the Linear Sum Assignment Problems (LSAPs) under realtime constraints, using Graphical Processing Units (GPUs). The motivating scenario is an industrial application for P2P live streaming that is moderated by a central tracker that is periodically solving LSAP instances to optimize the connectivity of thousands of peers. However, our findings are generic enough to be applied in other contexts. Our main contribution is a parallel version of a heuristic algorithm called Deep Greedy Switching (DGS) on GPUs using the CUDA programming language. DGS sacrifices absolute optimality in favor of a substantial speedup in comparison to classical LSAP solvers like the Hungarian and auctioning methods. We show the modifications needed to parallelize the DGS algorithm and the performance gains of our approach compared to a sequential CPU-based implementation of DGS and a mixed CPU/GPU-based implementation of it
On The Feasibility Of Centrally-Coordinated Peer-To-Peer Live Streaming
In this paper we present an exploration of central coordination as a way of managing P2P live streaming overlays.
The main point is to show the elements needed to construct a system with that approach. A key element in the feasibility of this approach is a near real-time optimization engine for peer selection. Peer organization in a way that enables high bandwidth utilization plus optimized peer selection based on multiple utility factors make it possible to achieve large source bandwidth savings and provide high quality of user experience. The benefits of our approach are also seen most when NAT constraints come into play
Self-Correcting Broadcast in Distributed Hash Tables
We present two broadcast algorithms that can be used on top of distributed hash tables (DHTs) to perform group communication and arbitrary queries. Unlike other P2P group communication mechanisms, which either embed extra information in the DHTs or use random overlay networks, our algorithms take advantage of the structured DHT overlay networks without maintaining additional information. The proposed algorithms do not send any redundant messages. Furthermore the two algorithms ensure 100% coverage of the nodes in the system even when routing information is outdated as a result of dynamism in the network. The first algorithm performs some correction of outdated routing table entries with a low cost of correction traffic. The second algorithm exploits the nature of the broadcasts to extensively update erroneous routing information at the cost of higher correction traffic. The algorithms are validated and evaluated in our stochastic distributed-algorithms simulator